P1 Notes

Components: 
- Array of bytes representing the memory pool
	= byte[size of pool]
	
- Doubly linked list that keeps track of the free blocks in the memory pool
	IE, holds the address and size of each free block in the memory pool
	= int (location of block start)
	= int (size of block)
	= handle (next handle)
	= handle (previous handle)
	
- Record array that stores the 'handles' to the stored data records in the memory pool

- Handle class
	= int (location of start address in memory pool)
	